{
 "cells": [
  {
   "cell_type": "markdown",
   "id": "9b835b74",
   "metadata": {},
   "source": [
    "# Logistic Regression\n",
    "\n",
    "Currently, **Concrete** only supports unsigned integers up to 7-bits. Nevertheless, we want to evaluate a logistic regression model with it. Luckily, we can make use of **quantization** to overcome this limitation."
   ]
  },
  {
   "cell_type": "markdown",
   "id": "7d46edc9",
   "metadata": {},
   "source": [
    "### Let's start by importing some libraries to develop our logistic regression model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 1,
   "id": "858205d9",
   "metadata": {},
   "outputs": [],
   "source": [
    "import numpy as np\n",
    "from sklearn.linear_model import LogisticRegression\n",
    "from sklearn.datasets import make_classification\n",
    "from sklearn.model_selection import train_test_split\n",
    "\n",
    "from copy import deepcopy\n",
    "from typing import Any, Dict\n",
    "\n",
    "from tqdm import tqdm"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "86b77c19",
   "metadata": {},
   "source": [
    "### Now import Concrete quantization tools. "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "id": "94df1602",
   "metadata": {},
   "outputs": [],
   "source": [
    "from concrete.quantization import (\n",
    "    QuantizedArray,\n",
    "    QuantizedLinear,\n",
    "    QuantizedModule,\n",
    "    QuantizedSigmoid,\n",
    ")"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "ff9c1757",
   "metadata": {},
   "source": [
    "### And some helpers for visualization."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "id": "67330862",
   "metadata": {},
   "outputs": [],
   "source": [
    "%matplotlib inline\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "from IPython.display import display"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "d4f43095",
   "metadata": {},
   "source": [
    "### And, finally, the FHE compiler."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "id": "3b76a5f6",
   "metadata": {},
   "outputs": [],
   "source": [
    "import concrete.numpy as hnp"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "34959f0a",
   "metadata": {},
   "source": [
    "### Define our Quantized Logistic Regression model."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "id": "a12ce041",
   "metadata": {},
   "outputs": [],
   "source": [
    "class QuantizedLogisticRegression(QuantizedModule):\n",
    "    \"\"\"\n",
    "    Quantized Logistic Regression\n",
    "    Building on top of QuantizedModule, this class will chain together a linear transformation\n",
    "    and an inverse-link function, in this case the logistic function\n",
    "    \"\"\"\n",
    "\n",
    "    @staticmethod\n",
    "    def from_sklearn(sklearn_model, calibration_data):\n",
    "        \"\"\"Create a Quantized Logistic Regression initialized from a sklearn trained model\"\"\"\n",
    "        if sklearn_model.coef_.ndim == 1:\n",
    "            weights = np.expand_dims(sklearn_model.coef_, 1)\n",
    "        else:\n",
    "            weights = sklearn_model.coef_.transpose()\n",
    "\n",
    "        bias = sklearn_model.intercept_\n",
    "        # In our case we have two data dimensions, the precision of the weights  needs to be 2 bits, \n",
    "        # as for now we need the quantized values to be greater than zero for weights\n",
    "        # Thus, to insure a maximum of 7 bits in the output of the linear transformation, we choose\n",
    "        # 4 bits for the data and the minimum of 1 for the bias\n",
    "        return QuantizedLogisticRegression(4, 2, 1, 6, weights, bias, calibration_data)\n",
    "\n",
    "    def __init__(self, q_bits, w_bits, b_bits, out_bits, weights, bias, calibration_data) -> None:\n",
    "        \"\"\"\n",
    "        Create the Logistic regression with different quantization bit precisions:\n",
    "\n",
    "        Quantization Parameters - Number of bits:\n",
    "            q_bits (int): bits for input data, insuring that the number of bits of\n",
    "                        the w . x + b operation does not exceed 7 for the calibration data\n",
    "            w_bits (int): bits for weights: in the case of a univariate regression this\n",
    "                        can be 1\n",
    "            b_bits (int): bits for bias (this is a single value so a single bit is enough)\n",
    "            out_bits (int): bits for the result of the linear transformation (w.x + b).\n",
    "                            In the case of Logistic Regression the result of the linear\n",
    "                            transformation is input to a univariate inverse-link function, so\n",
    "                            this value can be 7\n",
    "\n",
    "        Other parameters:\n",
    "            weights: a numpy nd-array of weights (Nxd) where d is the data dimensionality\n",
    "            bias: a numpy scalar\n",
    "            calibration_data: a numpy nd-array of data (Nxd)\n",
    "        \"\"\"\n",
    "        self.n_bits = out_bits\n",
    "\n",
    "        # We need to calibrate to a sufficiently low number of bits\n",
    "        # so that the output of the Linear layer (w . x + b)\n",
    "        # does not exceed 7 bits\n",
    "        self.q_calibration_data = QuantizedArray(q_bits, calibration_data)\n",
    "\n",
    "        # Quantize the weights and create the quantized linear layer\n",
    "        q_weights = QuantizedArray(w_bits, weights)\n",
    "        q_bias = QuantizedArray(b_bits, bias)\n",
    "        q_layer = QuantizedLinear(out_bits, q_weights, q_bias)\n",
    "\n",
    "        # Store quantized layers\n",
    "        quant_layers_dict: Dict[str, Any] = {}\n",
    "\n",
    "        # Calibrate the linear layer and obtain calibration_data for the next layers\n",
    "        calibration_data = self._calibrate_and_store_layers_activation(\n",
    "            \"linear\", q_layer, calibration_data, quant_layers_dict\n",
    "        )\n",
    "\n",
    "        # Add the inverse-link for inference.\n",
    "        # This needs to be quantized since it's computed in FHE,\n",
    "        # but we can use 7 bits of output since, in this case,\n",
    "        # the result of the inverse-link is not processed by any further layers\n",
    "        # Seven bits is the maximum precision but this could be lowered to improve speed\n",
    "        # at the possible expense of higher deviance of the regressor\n",
    "        q_logit = QuantizedSigmoid(n_bits=7)\n",
    "\n",
    "        # Now calibrate the inverse-link function with the linear layer's output data\n",
    "        calibration_data = self._calibrate_and_store_layers_activation(\n",
    "            \"invlink\", q_logit, calibration_data, quant_layers_dict\n",
    "        )\n",
    "\n",
    "        # Finally construct our Module using the quantized layers\n",
    "        super().__init__(quant_layers_dict)\n",
    "\n",
    "    def _calibrate_and_store_layers_activation(\n",
    "        self, name, q_function, calibration_data, quant_layers_dict\n",
    "    ):\n",
    "        \"\"\"\n",
    "        This function calibrates a layer of a quantized module (e.g. linear, inverse-link,\n",
    "        activation, etc) by looking at the input data, then computes the output of the quantized\n",
    "        version of the layer to be used as input to the following layers\n",
    "        \"\"\"\n",
    "\n",
    "        # Calibrate the output of the layer\n",
    "        q_function.calibrate(calibration_data)\n",
    "        # Store the learned quantized layer\n",
    "        quant_layers_dict[name] = q_function\n",
    "        # Create new calibration data (output of the previous layer)\n",
    "        q_calibration_data = QuantizedArray(self.n_bits, calibration_data)\n",
    "        # Dequantize to have the value in clear and ready for next calibration\n",
    "        return q_function(q_calibration_data).dequant()\n",
    "\n",
    "    def quantize_input(self, x):\n",
    "        q_input_arr = deepcopy(self.q_calibration_data)\n",
    "        q_input_arr.update_values(x)\n",
    "        return q_input_arr\n",
    "\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0df30d0e",
   "metadata": {},
   "source": [
    "### We need a training set, specifically a handcrafted one for simplicity. Let's also define a grid on which to test our classifier."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "id": "caef5aed",
   "metadata": {},
   "outputs": [],
   "source": [
    "X, y = make_classification(\n",
    "    n_features=2,\n",
    "    n_redundant=0,\n",
    "    n_informative=2,\n",
    "    random_state=2,\n",
    "    n_clusters_per_class=1,\n",
    "    n_samples=100,\n",
    ")\n",
    "\n",
    "rng = np.random.RandomState(2)\n",
    "X += 2 * rng.uniform(size=X.shape)\n",
    "\n",
    "b_min = np.min(X, axis=0)\n",
    "b_max = np.max(X, axis=0)\n",
    "\n",
    "x_train, x_test, y_train, y_test = train_test_split(X, y, test_size=0.4, random_state=42)\n",
    "\n",
    "x_test_grid, y_test_grid = np.meshgrid(\n",
    "    np.linspace(b_min[0], b_max[0], 30), np.linspace(b_min[1], b_max[1], 30)\n",
    ")\n",
    "x_grid_test = np.vstack([x_test_grid.ravel(), y_test_grid.ravel()]).transpose()\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "0b209247",
   "metadata": {},
   "source": [
    "### Train a logistic regression with sklearn on the training set."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "id": "ec57fede",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "text/plain": [
       "LogisticRegression()"
      ]
     },
     "execution_count": 7,
     "metadata": {},
     "output_type": "execute_result"
    }
   ],
   "source": [
    "logreg = LogisticRegression()\n",
    "logreg.fit(x_train, y_train)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "5be6c7d5",
   "metadata": {},
   "source": [
    "### Let's visualize our data set and initial classifier to get a grasp on it."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 8,
   "id": "f7076523",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 864x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "y_score_grid = logreg.predict_proba(x_grid_test)[:,1]\n",
    "\n",
    "plt.ioff()\n",
    "plt.clf()\n",
    "fig, ax = plt.subplots(1, figsize=(12,8))\n",
    "fig.patch.set_facecolor('white')\n",
    "ax.contourf(x_test_grid, y_test_grid, y_score_grid.reshape(x_test_grid.shape), cmap='coolwarm')\n",
    "CS1 = ax.contour(\n",
    "    x_test_grid,\n",
    "    y_test_grid,\n",
    "    y_score_grid.reshape(x_test_grid.shape),\n",
    "    levels=[0.5],\n",
    "    linewidths=2,\n",
    ")\n",
    "CS1.collections[0].set_label(\"Sklearn decision boundary\")\n",
    "ax.scatter(x_train[:,0], x_train[:,1],c=y_train, marker=\"D\", cmap=\"jet\")\n",
    "ax.scatter(x_test[:,0], x_test[:,1], c=y_test, marker=\"x\", cmap=\"jet\")\n",
    "ax.legend(loc=\"upper right\")\n",
    "display(fig)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "996fbe05",
   "metadata": {},
   "source": [
    "### Calibrate the model for quantization using both training and test data\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 9,
   "id": "06ed91dd",
   "metadata": {},
   "outputs": [],
   "source": [
    "calib_data = X \n",
    "q_logreg = QuantizedLogisticRegression.from_sklearn(logreg, calib_data)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "cd74c5e7",
   "metadata": {},
   "source": [
    "### Now, we can compile our model to FHE, taking as the possible input set all of our dataset."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "id": "b8f8f95b",
   "metadata": {},
   "outputs": [],
   "source": [
    "X_q = q_logreg.quantize_input(X)\n",
    "\n",
    "engine = q_logreg.compile(X_q)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "b608faef",
   "metadata": {},
   "source": [
    "### Time to make some predictions, first in the clear."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "id": "97eaf932",
   "metadata": {},
   "outputs": [],
   "source": [
    "# Test the original classifier\n",
    "y_pred_test = np.asarray(logreg.predict(x_test))\n",
    "\n",
    "# Now that the model is quantized, predict on the test set\n",
    "x_test_q = q_logreg.quantize_input(x_test)\n",
    "q_y_score_test = q_logreg.forward_and_dequant(x_test_q)\n",
    "q_y_pred_test = (q_y_score_test > 0.5).astype(np.int32)\n",
    "\n",
    "# Predict sklearn classifier probabilities on the domain\n",
    "y_score_grid = logreg.predict_proba(x_grid_test)[:, 0]\n",
    "\n",
    "# Predict quantized classifier probabilities on the whole domain to plot contours\n",
    "grid_test_q = q_logreg.quantize_input(x_grid_test)\n",
    "q_y_score_grid = q_logreg.forward_and_dequant(grid_test_q)\n",
    "q_y_pred_test = (q_y_score_test > 0.5).astype(np.int32)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "8fb62d52",
   "metadata": {},
   "source": [
    "### Now let's predict using the quantized FHE classifier."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "id": "bc999411",
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "100%|██████████| 40/40 [01:11<00:00,  1.80s/it]\n"
     ]
    }
   ],
   "source": [
    "non_homomorphic_correct = 0\n",
    "homomorphic_correct = 0\n",
    "\n",
    "# Track the samples that are wrongly classified due to quantization issues\n",
    "q_wrong_predictions = np.zeros((0, 2), dtype=X.dtype)\n",
    "\n",
    "# Predict the FHE quantized classifier probabilities on the test set.\n",
    "# Compute FHE quantized accuracy, clear-quantized accuracy and \n",
    "# keep track of samples wrongly classified due to quantization\n",
    "for i, x_i in enumerate(tqdm(x_test_q.qvalues)):\n",
    "    y_i = y_test[i]\n",
    "\n",
    "    fhe_in_sample = np.expand_dims(x_i, 1).transpose([1, 0]).astype(np.uint8)\n",
    "\n",
    "    q_pred_fhe = engine.run(fhe_in_sample)\n",
    "    y_score_fhe = q_logreg.dequantize_output(q_pred_fhe)\n",
    "    homomorphic_prediction = (y_score_fhe > 0.5).astype(np.int32)\n",
    "\n",
    "    non_homomorphic_prediction = q_y_pred_test[i]\n",
    "    if non_homomorphic_prediction == y_i:\n",
    "        non_homomorphic_correct += 1\n",
    "    elif y_pred_test[i] == y_i:\n",
    "        q_wrong_predictions = np.vstack((q_wrong_predictions, x_test[i, :]))\n",
    "\n",
    "    if homomorphic_prediction == y_i:\n",
    "        homomorphic_correct += 1"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "f8c1d98a",
   "metadata": {},
   "source": [
    "### Aggregate accuracies for all the versions of the classifier."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "id": "8f3236fb",
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Sklearn accuracy: 90.0000\n",
      "Non Homomorphic Accuracy: 85.0000\n",
      "Homomorphic Accuracy: 85.0000\n",
      "Difference Percentage: 0.00%\n"
     ]
    }
   ],
   "source": [
    "sklearn_acc = np.sum(y_pred_test == y_test) / len(y_test) * 100\n",
    "non_homomorphic_accuracy = (non_homomorphic_correct / len(y_test)) * 100\n",
    "homomorphic_accuracy = (homomorphic_correct / len(y_test)) * 100\n",
    "difference = abs(homomorphic_accuracy - non_homomorphic_accuracy)\n",
    "\n",
    "print(f\"Sklearn accuracy: {sklearn_acc:.4f}\")\n",
    "print(f\"Non Homomorphic Accuracy: {non_homomorphic_accuracy:.4f}\")\n",
    "print(f\"Homomorphic Accuracy: {homomorphic_accuracy:.4f}\")\n",
    "print(f\"Difference Percentage: {difference:.2f}%\")\n"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "4810fdaf",
   "metadata": {},
   "source": [
    "### Plot the results of both the original and FHE versions of the classifier, showing classification errors induced by quantization with a red circle."
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "id": "41b274ed",
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "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",
      "text/plain": [
       "<Figure size 864x576 with 1 Axes>"
      ]
     },
     "metadata": {},
     "output_type": "display_data"
    }
   ],
   "source": [
    "plt.clf()\n",
    "fig, ax = plt.subplots(1,figsize=(12,8))\n",
    "fig.patch.set_facecolor('white')\n",
    "ax.contourf(x_test_grid, y_test_grid, q_y_score_grid.reshape(x_test_grid.shape), cmap=\"coolwarm\")\n",
    "CS1 = ax.contour(\n",
    "    x_test_grid,\n",
    "    y_test_grid,\n",
    "    q_y_score_grid.reshape(x_test_grid.shape),\n",
    "    levels=[0.5],\n",
    "    linewidths=2,\n",
    ")\n",
    "ax.scatter(x_train[:, 0], x_train[:, 1], c=y_train, cmap=\"jet\", marker=\"D\")\n",
    "ax.scatter(\n",
    "    q_wrong_predictions[:, 0], q_wrong_predictions[:, 1], c=\"red\", marker=\"o\", edgecolors=\"k\", s=32\n",
    ")\n",
    "ax.scatter(x_test[:, 0], x_test[:, 1], c=q_y_pred_test, cmap=\"jet\", marker=\"x\")\n",
    "CS2 = ax.contour(\n",
    "    x_test_grid,\n",
    "    y_test_grid,\n",
    "    y_score_grid.reshape(x_test_grid.shape),\n",
    "    levels=[0.5],\n",
    "    linewidths=2,\n",
    "    linestyles=\"dashed\",\n",
    "    cmap=\"hot\",\n",
    ")\n",
    "ax.clabel(CS1, CS1.levels, inline=True, fontsize=10)\n",
    "ax.clabel(CS2, CS2.levels, inline=True, fontsize=10)\n",
    "CS1.collections[0].set_label(f\"Quantized FHE decision boundary, acc={homomorphic_accuracy:.1f}\")\n",
    "CS2.collections[0].set_label(f\"Sklearn decision boundary, acc={sklearn_acc:.1f}\")\n",
    "ax.legend(loc=\"upper right\")\n",
    "display(fig)"
   ]
  },
  {
   "cell_type": "markdown",
   "id": "52a83d37",
   "metadata": {},
   "source": [
    "### Enjoy!"
   ]
  }
 ],
 "metadata": {
  "execution": {
   "timeout": 10800
  }
 },
 "nbformat": 4,
 "nbformat_minor": 5
}
